I found that when you attempt to get propagated access information, if one propagated different access(using DXL) that you don't get what one would expect using "getImplied" has anyone seen this before?
string getImplied({Object o|Module m|Project p|Folder f|Item i}, Permission &ps)
EHcnck - Tue Feb 10 12:54:28 EST 2015 |
Re: propagate access issue llandale - Tue Feb 10 18:03:09 EST 2015
I'm thinking maybe you are confusing "inherited" access with propagated "implied" access.
-
"Inherited" means this thing's accesses inherit from the parent; an object from the module, an object from its parent object, a module from its folder. Things that are not "Inherited" are said to have "Specific" access.
-
"Implied" access is a mechanism for granting Modify or Delete access to the children, when the parent has Create access. As an admin I may deny you "MD" access to the folder but grant you "C"reate. You can create modules but not delete them. I can however propagate MD access to anything you ctreate in the folder, such as a formal module, which will allow you to MD objects in that module.
If I set that up correctly, "getImplied" on that folder should return "RM".
Now looking at the code, which I did not study hard:
-
function getPropagatePermission actually SETs implied rights, not "get" it.
-
I'm pretty sure that before you can SET propagated access to an item, it first must have Specific rights. So that function probably needs:
specific(I) near the top.
-Louie
|